import type { FormProps } from '@/components/Form';
import { FilterGroup } from '#/request';
import { AdColumn } from './table';

/** 搜索表单参数类型 */
export type SearchFormPropsType = boolean | SearchFormProps;

/** 搜索表单参数 */
export interface SearchFormProps {
  /** 在INPUT组件上单击回车时，是否自动搜索 */
  autoSubmitOnEnter?: boolean;
  /** 是否在重置时重新发起搜索 */
  submitOnReset?: boolean;
}

/** 搜索表单参数-内部 */
export interface SearchFormPropsInternal extends SearchFormProps, FormProps {
  /** 加载中 */
  loading?: boolean;
  /** 列配置 */
  columns: AdColumn[];
}

/** 搜索表单动作类型 */
export interface SearchFormActionType {
  /** 获取搜索信息 */
  getSearchInfo: () => FilterGroup;
}
